home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / daolibb / childvie.cpp < prev    next >
C/C++ Source or Header  |  1999-04-08  |  3KB  |  126 lines

  1. // ChildView.cpp : implementation of the CChildView class
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include "DaoSample.h"
  6. #include "ChildView.h"
  7. #include "DaoDialog.h"
  8. #include "DaoEdit.h"
  9. #include "ListDialog.h"
  10. #include "ModemDialog.h"
  11. #include "DaoCheck.h"
  12. #include "DaoCombo.h"
  13. #include "DaoPropPage.h"
  14. #include "Cust1Page.h"
  15. #include "Cust2Page.h"
  16. #include "DaoPropSheet.h"
  17.  
  18. #ifdef _DEBUG
  19. #define new DEBUG_NEW
  20. #undef THIS_FILE
  21. static char THIS_FILE[] = __FILE__;
  22. #endif
  23.  
  24. #define IN_INT        -4
  25. #define IN_LONG     -5
  26. int InputBox(HWND HWindow, LPSTR ATitle, LPSTR AStatic, void* ABuffer,
  27.     short tipo);
  28.  
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CChildView
  31.  
  32. CChildView::CChildView()
  33. {
  34. }
  35.  
  36. CChildView::~CChildView()
  37. {
  38. }
  39.  
  40.  
  41. BEGIN_MESSAGE_MAP(CChildView,CWnd )
  42.     //{{AFX_MSG_MAP(CChildView)
  43.     ON_WM_PAINT()
  44.     ON_COMMAND(ID_FILE_MODEM, OnFileModem)
  45.     ON_COMMAND(ID_FILE_CUSTOMER, OnFileCustomer)
  46.     ON_COMMAND(ID_FILE_CUSTOMER_OPEN, OnFileCustomerOpen)
  47.     //}}AFX_MSG_MAP
  48. END_MESSAGE_MAP()
  49.  
  50.  
  51. /////////////////////////////////////////////////////////////////////////////
  52. // CChildView message handlers
  53.  
  54. BOOL CChildView::PreCreateWindow(CREATESTRUCT& cs) 
  55. {
  56.     if (!CWnd::PreCreateWindow(cs))
  57.         return FALSE;
  58.  
  59.     cs.dwExStyle |= WS_EX_CLIENTEDGE;
  60.     cs.style &= ~WS_BORDER;
  61.     cs.lpszClass = AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS, 
  62.         ::LoadCursor(NULL, IDC_ARROW), HBRUSH(COLOR_WINDOW+1), NULL);
  63.  
  64.     return TRUE;
  65. }
  66.  
  67. void CChildView::OnPaint() 
  68. {
  69.     CPaintDC dc(this); // device context for painting
  70.     
  71.     // TODO: Add your message handler code here
  72.     
  73.     // Do not call CWnd::OnPaint() for painting messages
  74. }
  75.  
  76.  
  77. void CChildView::OnFileModem() 
  78. {
  79.     DaoRecordset rs;
  80.     try {
  81.         rs = "select * from Modem";
  82.     }
  83.     catch(_com_error& e) {
  84.         Show(e, *this);
  85.         return;
  86.     }
  87.     CModemDialog Mod;
  88.     CListDialog Lis(rs, &Mod);
  89.     Lis.SetCaption("Modem Listing");
  90.     Lis.DoModal();
  91. }
  92.  
  93. void CChildView::OnFileCustomer() 
  94. {
  95.     try {
  96.         CDaoPropSheet Prop("Customer Data", "Customer", true);
  97.         Prop.AddPage(new CCust1Page);
  98.         Prop.AddPage(new CCust2Page);
  99.         Prop.DoModal();
  100.     }
  101.     catch(_com_error& e) {
  102.         Show(e, *this);
  103.     }
  104. }
  105.  
  106. void CChildView::OnFileCustomerOpen() 
  107. {
  108.     int customer = 0;
  109.  
  110.     if(InputBox(m_hWnd, "Customer", "Enter Customer ID: ", &customer,
  111.         IN_LONG) == IDCANCEL) return;
  112.  
  113.     CString sql;
  114.     sql.Format("select * from Customer where CustomerID = %d", customer);
  115.  
  116.     try {
  117.         CDaoPropSheet Prop("Customer Data", sql);
  118.         Prop.AddPage(new CCust1Page);
  119.         Prop.AddPage(new CCust2Page);
  120.         Prop.DoModal();
  121.     }
  122.     catch(_com_error& e) {
  123.         Show(e, *this);
  124.     }
  125. }
  126.